Methods for capturing and reporting metrics regarding ad placement

ABSTRACT

Systems and methods for recording impression events of Ad content on a webpage. An example method renders on a display of a computer device a webpage accessible over a network. The webpage includes at least one Ad unit. Then Ad tag information associated with the at least one Ad unit and browser viewport information (display location and size information) is retrieved. The occurrence of an Ad Placement event is determined if based on the comparison a predefined percentage of the Ad unit is within the browser viewport. An Ad Placement event timer is begun upon the determination of occurrence of the Ad Placement event. The Ad Placement event timer is stopped if an out-of-view event has occurred based on the Ad tag information and the browser viewport information. An Ad Placement event is then recorded. The recorded Ad Placement event is transmitted to a previously designated server over the network.

PRIORITY CLAIM

This application claims the benefit of U.S. Provisional Application Ser. Nos. 61/267,742, 61/267,748, 61/267,751 filed Dec. 8, 2009, which are hereby incorporated by reference.

BACKGROUND OF THE INVENTION

Ad placement is defined literally as “where are you placing the Ad on the (web) page”. Ad placement could be at the top of the page, where the Ad is immediately seen by the website visitor (industry vernacular: “Above the fold”), or somewhere else on the page where it is only partially visible or out of view completely (industry vernacular: “Below the fold”). Currently, advertising companies charge their clients for every Ad impression whether the Ad appears Above the fold or Below the fold. Thus, clients may be paying for ineffective (Below the fold) ads.

SUMMARY OF THE INVENTION

The present invention provides systems and methods for recording impression events of Ad content on a webpage. An example method performed on a user computer device coupled to at least one of a public or private data network retrieves and renders on a display of the user computer device a webpage accessible over the network. The webpage includes at least one Ad unit and the webpage is rendered within a browser having a viewport. Then Ad tag information associated with the at least one Ad unit and browser viewport information is retrieved. The occurrence of an Ad Placement event is determined based on the Ad tag information and the browser viewport information. An Ad Placement event timer is begun upon the determination of occurrence of the Ad Placement event. The Ad Placement event timer is stopped if an out-of-view event has occurred based on the Ad tag information and the browser viewport information. An Ad Placement event is then recorded. The recorded Ad Placement event is transmitted to a previously designated server over the network.

In one aspect of the invention, the Ad tag information and the browser viewport information include display location and size information. The occurrence of an Ad Placement event is determined if based on the comparison a predefined percentage of the Ad unit is within the browser viewport.

In another aspect of the invention, the out-of-view event occurs when at least one of the following occurs: the webpage is moved relative to the browser viewport such that the percentage of the Ad unit within the browser viewport falls below the predefined percentage; or the browser presenting the webpage is no longer the active browser on the display.

BRIEF DESCRIPTION OF THE DRAWINGS

Preferred and alternative examples of the present invention are described in detail below with reference to the following drawings:

FIG. 1 illustrates a system configured to implement the present invention;

FIG. 2 illustrates a display showing the relationship of displayed features;

FIGS. 3-1, 3-2 and 4 illustrate a flow diagram of an example process performed by at least part of the system shown in FIG. 1; and

FIG. 5 illustrates a grid that represents data elements and their applicability to each event.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

FIG. 1 illustrates an example system 10 that captures and reports metrics regarding Ad placement. The system 10 includes one or more user computer systems 12 coupled to multiple servers 16-19 over a public or private data network (e.g., the Internet) 14. A website generating server 16 produces a website that is accessible by a user via a browser on one of the user computer systems 12 over the network 14. The website includes Ad tags that instruct the browser to retrieve a corresponding advertisement from an associated Ad server 18 over the network 14. The website, Ad tag or retrieved advertisement includes embedded code that determines a number of metrics associated with display of the advertisement. The determined metrics are then sent to an Ad evaluation server 19 and/or the other servers 16, 18 for evaluation.

FIG. 2 illustrates a browser 22 presented on a display 20 of one of the user computer systems 12. The size of a screen area 21 of the display 20 is used as a basis of comparison against the size of the browser 22 to ensure that the browser 22 is fully visible. A viewport 24 is the total area within the browser 22 that is visible within the screen area 21. The viewport 24 is defined by upper left corner viewport x, y display dimensions 28. A web page is displayed at least partially within the viewport 24. Location of an Ad presented in the web page is identified by upper left corner x, y coordinates 34 and a total area of the Ad. The Ad is determined above the fold (i.e., visible) or below the fold (i.e., not visible) based on a defined percentage of the total Ad area in the viewport 24. This information relating to the location of the Ad is recorded at the user computer system 12 and sent to one of the servers 16, 18, 19 which then provides a report for any interested parties.

FIGS. 3-1, 3-2 and 4 illustrate a flowchart of an example process 100 performed by the system 10 shown in FIG. 1. First, at a block 104, the user computer system 12 retrieves and renders into a browser a web page that includes one or more Ad units. At a block 106, a program embedded with one of the Ad units executes causing the processor of the system 12 to retrieve Ad tag information from each of the Ad units and browser and viewport information from the browser. Then, at a decision block 108, the program determines if an Ad Placement event has occurred based on the received information. If no Ad Placement event has occurred, then a predefined delay occurs at a block 112. Then, if the browser is still open, as determined at a decision block 114, new browser and viewport information is retrieved at a block 118 and the process 100 returns to the decision block 108.

If at the decision block 108, the program determines an Ad Placement event has occurred, then at a block 119, a timer begins. At a decision block 120, it is determined if this Ad Placement event is a first InView event. At a block 121, an InitialInView event is recorded if this is the first time the Ad unit appears since the corresponding web page was opened. At a block 122, an InView event is recorded if this is not the first time the Ad unit appears since the corresponding web page was opened.

Then, at a decision block 124, the program determines if an OutOfView event has occurred (e.g., the Ad unit is not visible in the viewport 24). If an OutOfView event has occurred, then, at a block 126, the timer is stopped, then an OutOfView event with elapsed time are recorded. The process 100 continues to the decision block 114 to repeat if the browser is still open. If the browser is determined to be closed at the decision block 114, then, at a block 130, a CloseUnload event is outputted to one or more of the servers 16-19 with associated time.

FIG. 4 illustrates the actions performed at the decision block 108 of FIG. 3-1. These actions are not performed in any particular order. At a block 140, dimensions and x, y coordinates of the viewport are identified by the program. At a block 146, x, y coordinates and dimensions of the Ad unit are identified. At a block 148, an InView event is determined to have occurred if at least a predefined percentage (n%) of the Ad unit is within the viewport based on the identified dimensions and x, y coordinates of the viewport and the Ad.

The present invention includes a block of JavaScript code that is applied/embedded to the client's Ad container (i.e., Ad unit). Other types of embedded coding may be used. After the Ad container is received at the user computer system 12, the JavaScript code executes to report specific event types back to the one or more servers 16-19. These events include:

-   -   AdImpression         -   The Ad container was rendered by the browser, regardless of             placement on the web page. This is the traditional Ad             industry measurement for Ad delivery.     -   InitialInView         -   This is triggered the first time that a specified visual             percentage of the Ad placement area is in the viewport 24 of             the browser 22. The visible percentage is defined by an             “InView Percentage” global configuration setting.     -   OutOfView         -   This is triggered when the Ad unit goes from being in the             viewport 24 to out of the viewport 24 and is subject to the             above referenced InView percentage. This event also             reports/records a “duration” parameter value that records             the total time the Ad placement was in the viewport 24. This             event is typically triggered by a scrolling action within             the web browser 22 such that the Ad unit is scrolled out of             the viewport.     -   InView         -   This is triggered all subsequent times that the Ad placement             returned into view, such as a scrolling action within the             web browser 22 that returns the Ad placement into the             viewport 24.     -   Window close/unload         -   This event is fired when a user closes the browser 22 or             reloads, or navigates away from the page that includes the             ad. The duration event parameter and the total duration that             the user was viewing the page are sent to the Ad evaluation             server 19.

These events are captured with the code that is delivered (embedded) with the Ad unit. The code communicates with the browser 22 for specific event types, such as scrolling events, render events, close events, etc. In one embodiment, the code includes an open source JavaScript library (jQuery) that “connects” to the browser 22 to be able to receive the browser events and a custom JavaScript code that identifies the location of Ad unit(s) within a web page. The code deduces when the independent browser events are applicable to the Ad unit.

The events are reported back to the Ad evaluation server(s) 19 for every Ad impression delivered to a web page and stored in event logs. The Ad evaluation server 19 performs a Map/Reduce process to convert the raw data into a reporting database format. The event data, once processed, is capable of reporting a new set (e.g. in addition to traditional events: Impressions, Clicks, Click-through Rate (CTR) (CTR=Total Clicks divided by Total Impressions), and Total Unique Visitors to a web page (Uniques)) of statistics in the form of:

-   -   Total InViews         -   Total number of times the Ad unit was actually viewed. This             is taken from the InitialInView event and is typically             compared by an observer to the total impressions to             establish a benchmark for how a website is effectively             generating viewership to the Ad placement.     -   InView Percent         -   A percentage of all impressions resulting in an Ad container             appearing within the viewport 24. The percentage is defined             as Total InitialInView events divided by Total adImpression             events. A key measurement, which is commonly the basis for             communicating to web page publishers (i.e., website owners)             to correct or improve Ad placement to improve this             percentage. Ad placement clients can decide to stop serving             to sites with low InView percentages, as it essentially             means that the client is effectively not getting their             money's worth, since the current industry standard is to pay             based on impressions, which assume 100% InView.     -   Placement         -   Web page dimensions and the x, y coordinates of the             placement in the context of the web page dimensions,             including the site visitor's total desktop resolution, the             browser dimensions, and the viewport dimensions.     -   Average Time InView         -   A measurement, (e.g., milliseconds), of how long the Ad unit             was in the viewport 24. This can be a single event or the             combination of multiple InView events where the site visitor             is scrolling the Ad unit into/out of the viewport 24.     -   Average Time InView per Unique         -   Same measurement as above, but established on a             per-unique-visitor basis.     -   Percentage of sites with good placement         -   A measurement of all domains that exceeded a specified             InView percentage.

For every event, the following elements are also reported to the server 19 as parameter values:

-   -   uid: The UIDToken representing the unique identifier for this         specific Ad container in the reporting database;     -   swfname: The name of the creative (e.g., wbtw_(—)728×90) (see         below for custom creative use-cases);     -   eventcode: The event code identifying the specific event being         logged;     -   location: The page URL where the Ad placement resides. See the         section below on URLTypes and Parsing;     -   wh: The width and height of the browser viewport;     -   xy: The coordinates of the item within the viewport or the mouse         coordinates, depending on placement or creative eventcode type;     -   cid: CampaignID?—An optional arbitrary value that is forwarded         from a “cid” param passed to ads.js;     -   vchannel: ChannelID?—An optional arbitrary value that is         forwarded from a “vchannel” param passed to ads.js;     -   publisher: Publisher Identifier—An optional value that         identifies the partner network, and is forwarded from a         “publisher” param passed to ads.js;     -   pageurl: PageURL?—An optional value to explicitly specify the         hosting page, and is forwarded from a “pageurl” param passed to         ads.js;     -   duration: A value, in milliseconds, measuring a time interval         for the event type; and     -   t: an AdXposeToken to validate the event.

The publisher and pageurl parameters are intended to be populated through the use of third-party Ad network “macros”, which substitute a pre-defined keyword string with an applicable runtime value. For example, the RMX macros for publisher and pageurl are $ {PUBLISHERID} and $ {SOURCEURLENC}, respectively.

The following elements are only passed on the AdImpression event as extended elements, as referenced in the last column of FIG. 4:

-   -   iframed: Boolean value indicating whether the placement is         enclosed in an iFrame;     -   cookieenabled: Boolean value indicating whether cookies are         enabled in the browser;     -   screenwh: The resolution of the monitor that the user is using;     -   screenavailwh: The available screen real estate, minus menu bars         and such;     -   colordepth: 8, 16, or 24 in most cases;     -   flash: The version number of Flash Player if the user has Flash         installed, or absent if they don't;     -   user-agent: The browser user-agent value is passed as an HTTP         Header element in the adImpression event; and     -   cookie-id: The cookie-id value is passed as a header element in         the api request header rather than as a parameter. The event         logger also checks for the presence of a cookied user         identifier. If it's present, it'll log it. If it's absent, it'll         generate a new user identifier, log it, and set a cookie on the         client.

FIG. 5 represents the relationship of events to parameters.

While the preferred embodiment of the invention has been illustrated and described, as noted above, many changes can be made without departing from the spirit and scope of the invention. Accordingly, the scope of the invention is not limited by the disclosure of the preferred embodiment. Instead, the invention should be determined entirely by reference to the claims that follow. 

1. A method for recording impression events of Ad content on a webpage, the method comprising: at a user computer device coupled to at least one of a public or private data network, retrieving and rendering on a display of the user computer device a webpage accessible over the network, wherein the webpage comprises at least one Ad unit and wherein the webpage is rendered within a browser having a viewport; retrieving Ad tag information associated with the at least one Ad unit and browser viewport information; determining the occurrence of an Ad Placement event based on the Ad tag information and the browser viewport information; beginning an Ad Placement event timer upon the determination of occurrence of the Ad Placement event; stopping the Ad Placement event timer if an out-of-view event has occurred based on the Ad tag information and the browser viewport information; recording the Ad Placement event, wherein the recorded Ad Placement event includes the time of the stopped event timer; and transmitting the recorded Ad Placement event to a previously designated server over the network.
 2. The method of claim 1, wherein the Ad tag information and the browser viewport information comprise display location and size information, wherein determining comprises comparing the display location and size information of the Ad tag information and the browser viewport and determining the occurrence of an Ad Placement event if, based on the comparison, a predefined percentage of the Ad unit is within the browser viewport.
 3. The method of claim 2, wherein transmitting occurs if at least one of the webpage rendered in the browser is navigated away from or the browser is closed.
 4. The method of claim 1, wherein the out-of-view event occurs when at least one of the following occurs: the webpage is moved relative to the browser viewport such that the percentage of the Ad unit within the browser viewport falls below a predefined percentage; or the browser presenting the webpage is no longer the active browser on the display.
 5. The method of claim 4, wherein movement of the webpage comprises scrolling.
 6. A user computer device comprising: a display; and a processor coupled to the display and to at least one of a public or private data network; the processor configured to: retrieve and render on the display a webpage accessible over the network, wherein the webpage comprises at least one Ad unit and wherein the webpage is rendered within a browser having a viewport; retrieve Ad tag information associated with the at least one Ad unit and browser viewport information; determine the occurrence of an Ad Placement event based on the Ad tag information and the browser viewport information; begin an Ad Placement event timer upon the determination of occurrence of the Ad Placement event; stop the Ad Placement event timer if an out-of-view event has occurred based on the Ad tag information and the browser viewport information; record the Ad Placement event, wherein the recorded Ad Placement event includes the time of the stopped event timer; and transmit the recorded Ad Placement event to a previously designated server over the network.
 7. The device of claim 6, wherein the Ad tag information and the browser viewport information comprise display location and size information, wherein the processor determines the occurrence of the Ad Placement event by comparing the display location and size information of the Ad tag information and the browser viewport and determining the occurrence of the Ad Placement event if based on the comparison a predefined percentage of the Ad unit is within the browser viewport.
 8. The device of claim 7, wherein the processor transmits if at least one of the webpage rendered in the browser is navigated away from or the browser is closed.
 9. The device of claim 6, wherein the out-of-view event occurs when at least one of the following occurs: the webpage is moved relative to the browser viewport such that the percentage of the Ad unit within the browser viewport falls below a predefined percentage; or the browser presenting the webpage is no longer the active browser on the display.
 10. The device of claim 9, wherein movement of the webpage comprises a scroll action.
 11. A system for recording impression events of Ad content on a webpage, the system comprising: a means for retrieving and rendering on a display of a user computer device a webpage accessible over a network, wherein the webpage comprises at least one Ad unit and wherein the webpage is rendered within a browser having a viewport; a means for retrieving Ad tag information associated with the at least one Ad unit and browser viewport information; a means for determining the occurrence of an Ad Placement event based on the Ad tag information and the browser viewport information; a means for beginning an Ad Placement event timer based upon the determination of occurrence of the Ad Placement event; a means for stopping the Ad Placement event timer if an out-of-view event has occurred based on the Ad tag information and the browser viewport information; a means for recording an Ad Placement event, wherein the recorded Ad Placement event includes the time of the stopped event timer; and a means for transmitting the recorded Ad Placement event to a previously designated server over the network.
 12. The system of claim 11, wherein the Ad tag information and the browser viewport information comprise display location and size information, wherein the means for determining comprises: a means for comparing the display location and size information of the Ad tag information and the browser viewport and determining the occurrence of an Ad Placement event if based on the comparison a predefined percentage of the Ad unit is within the browser viewport.
 13. The system of claim 12, wherein the means for transmitting transmits if at least one of the webpage rendered in the browser is navigated away from or the browser is closed.
 14. The system of claim 11, wherein the out-of-view event occurs when at least one of the following occurs: the webpage is moved relative to the browser viewport such that the percentage of the Ad unit within the browser viewport falls below a predefined percentage; or the browser presenting the webpage is no longer the active browser on the display.
 15. The system of claim 14, wherein movement of the webpage comprises scrolling. 